package com.aqumon.www.entity.request.jenkins;
import com.aqumon.www.entity.request.ParamValidate;
import lombok.Data;

@Data
public class ConfigCreateReq implements ParamValidate {
    /**
     * 必填 jenkins 服务名称（前端起名）
     */
    private String jenkinsName;

    /**
     * 必填，jenkins 服务器地址
     */
    private String jenkinsUrl;

    /**
     * 必填，jenkins 访问用户名
     */
    private String userName;

    /**
     *  jenkins 访问token
     */
    private String token;

    /**
     * jenkins 访问密码，密码/token 二选一，优先token
     */
    private String password;

    @Override
    public void validate() {
        if (jenkinsUrl == null || jenkinsUrl.equals("")) {
            throw new IllegalArgumentException("jenkinsUrl 为空");
        } else if (userName == null || userName.equals("")) {
            throw new IllegalArgumentException("jenkins 用户名不能为空");
        } else if ((token == null || token.equals("")) && (password == null || password.equals(""))){
            throw new IllegalArgumentException("jenkins token 或 password 必须一个有值");
        }
    }
}

